# 1. 《风袖》全栈课API文档说明

# 课程说明

  1. 本API为《风袖》全栈课提供API数据,数据仅供学习。

  2. 可访问慕课网https://class.imooc.com/sale/javafullstack(opens new window) 购买本全栈课

  3. 全栈课分为4个阶段:高级电商小程序、Java SpringBoot、Vue和Java CMS

  4. CMS项目地址请访问http://sleeve.talelin.com(opens new window)

# API说明

  1. API设有频率限制请不要恶意调用

  2. 如要使用本API,请前往 https://talelin.com(opens new window) 获取开发者key,所有API调用均需要携带开发者key

  3. 无论是提交数据还是返回数据只支持json,不支持xml

  4. 所有API均支持跨域,目前不做任何限制,后期根据情况可能会限制跨域访问

  5. API遵从严格的HTTP动作并采用标准的 Http Status Code 作为响应状态, 建议采用HTTP状态码作为API调用是否成功的标识,具体异常请通过错误码判断。

  6. API目前仅支持HTTP,不支持HTTPS,在开发小程序时,请在小程序项目设置中勾选“不校验HTTPS证书”

# 友情提示

# Host主机名

所有API均只给出Path Url部分,请自行在Url前面附加主机名。

Host: http://se.talelin.com

GET /v1/banner/id/{id}
1

完整API URL为:

GET http://se.talelin.com/v1/banner/name/b-3
1

# 如何使用开发者Key(appkey)访问API?

目前所有API的调用均需要使用开发者key。请访问: (http://www.talelin.com)[http://www.talelin.com] 来获取开发者key。使用如下方式携带appkey的方式:

  • 将开发者key加入到Http的Header里:

GET http://bl.talelin.com/v1/classic/latest

Headers appkey: zCr1cdeqweq

# 关于返回JSON结果的字段名称是Snake还是Camel的问题

API均以Snake下划线的形式返回JSON数据,如spu_list 事实上,驼峰更适合JS处理,但可读性比Snake要差很多。大多数标准API均以Snake形式返回Json数据。 使用SpringBoot开发时,可以在配置文件中增加Jackson或者fastjson的配置项即可在两种风格间切换。

关于Post提交数据

提交数据也需要使用snake形式的命名来提交json

# 关于404的说明

404 在Restful中有比较特殊的意义,除了Url地址错误外,404也表示没有找到请求的资源。

《风袖》做了一个统一的约定,对于单个资源(非集合类型)如果没有找到资源,那么将返回一个404的异常信息。

而如果是集合资源未找到,API并不会返回异常,而是会返回一个空数组 [],状态码为200

如果是分页请求集合资源,当资源不存在时,将返回一个Pagable对象,包含一系列的分页信息,状态码为200

之所以没有严格按照Restful的标准是因为,对于集合类型的请求如果不保持数组或者类似数组的返回结果,这会让前端非常难以处理。

# 分页参数

服务器部分接口支持分页获取,分页参数需要通过url的query参数形式来传递。移动端通常不需要知道具体的页数,所以分页参数形式如下:

  • start 获取记录的起始序号

  • count 一次获取记录的条数

最大支持一次获取10条记录。 比如请求search接口时,url形式如下:

GET
v1/search?q=林白&start=0&count=10
1
2

当然也可以不传start和count参数,这种情况下服务端默认start=0,count=10。服务端将返回以下结构的JSON数据:

      
{
    "total":1,
    "count":10,
    "page":0,
    "total_page":1,
    "items":[
        {
            "id":8,
            "title":"ins复古翠绿NoteBook",
            "subtitle":"林白默默的掏出小本本,将她说的话一次不漏的记了下来。",
            "img":"",
            "for_theme_img":"",
            "price":"29.99",
            "discount_price":"27.8",
            "description":null,
            "tags":"林白推荐",
            "sketch_spec_id":"1",
            "max_purchase_quantity":null,
            "min_purchase_quantity":null
        }
    ]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
最后更新: 2021-08-12 13:31:59